1. Field of the Invention
The present invention relates generally to the field of servers, and more particularly, to electronic test support for server backplanes.
2. Description of Related Art
Buses are widely used to connect components of a computer system. The small computer system interface ("SCSI") bus, along with its SCSI bus backplane, both of which are integral parts of a SCSI system, offer superb capability. The SCSI system is a system level interface that provides an input/output (I/O) channel bus specification. A SCSI host adapter board in a computer or host system serves to connect the host bus to the SCSI bus. The SCSI system can be used with a wide variety of peripheral devices, such as hard disk drives, floppy disk drives, CD-ROM drives, scanners, and the like, and also host system and satellite SCSI controllers. The hard disk drives could be large memory capacity SCSI-compatible hard drives. The devices will be collectively referred to hereinafter as "drives."
The SCSI system is also expandable. A number of the drives can be added to the system without occupying multiple host bus slots. For example, the SCSI system may be used to couple a multiple number of drives to the host computer system. Moreover, the SCSI system offers a more general drive interface compared to prior specialized interfaces. For example, the SCSI system supports several important features, including drive daisy-chaining, and the issuance of high-level commands via a command block.
The SCSI bus can communicate with several of the different drives simultaneously. The SCSI bus, however, does not communicate directly with the drives themselves. Instead, the drives may be serviced by the SCSI controller (e.g., an interface board or a chip) in the host system that may connect up to 6 or more of the drives. The SCSI controller is an intelligent controller that contains drive software drivers for the various drives attached to the SCSI bus. Alternatively, the SCSI bus may communicate with SCSI controllers built into each of the drives. Drives having controllers mounted in or on the drives themselves are referred to as SCSI drives.
In the SCSI system, for the drives to work properly, the first (e.g., the SCSI controller) and the last drives, or a SCSI drive daisy-chain (if used) must be "terminated." Termination is usually accomplished by setting a jumper switch on the drive or by installing termination blocks. Termination may also be set via software. Regardless of the specific implementation, however, active termination is implemented using a low voltage level termination signal sent from the host system to the terminated drive via the SCSI bus. When daisy-chaining drives, the termination for a drive positioned in the middle of the chain needs to be defeated before proper operation can begin. If a drive has not been terminated properly, all of the drives in the chain will perform unreliably or not at all.
The SCSI bus can be driven with either single-ended or differential line drivers. In both cases, the bus typically has 50/68 lines or 80 lines for hot swap drives (described below). The typical SCSI bus will carry signals such as termination, power, attention, busy, acknowledged, reset, message, select, C/D (control/data), request, and I/O, and includes datalines, a data parity line, and ground lines. In the single-ended system, ground lines are alternated with signal lines, and in the differential system, even and odd lines form differential signal pairs. The host system uses a command to the drive via a command descriptor block, that specifies an opcode, a logical unit number (LUN) of the drive and block address, a length control byte and a control byte. The control byte has a feature that allows multiple commands to be sent in a single block. The drives interpret and perform the SCSI command sent by the controller. Every SCSI command returns a status byte, each bit of which has a specific meaning (good, busy, etc.).
The SCSI bus backplane may be a circuit card assembly included in low to high range server products. The SCSI backplane forms an integral part of a chassis of the host system. The backplane provides signals and pathways between the host system and up to six (or more) interconnected SCSI drives. The backplane functions to control the drives and to log system data. The SCSI backplane provides a power, command/control, and SCSI bus signal interface to the drives. For configurations having the SCSI controller in the host system, the backplane receives control signals from the SCSI controller over a SCSI controller channel in the SCSI bus. The backplane also features simplified cable management and SCA connectors to simplify inserting and removing the SCSI drives.
The backplane typically features the ability to replace the drives while the host system power remains on. This is referred to as drive "hot swapping." Hot swapping involves automatically detecting drive presence, turning off or disconnecting power to the drive, removing it, replacing it with another drive, automatically detecting the other drive's presence, and sequencing power-on to the other drive by a delay ramp function. However, if a drive type is changed, for drive identification purposes, the host system must be powered down and powered up again to run a host system basic input/output system ("BIOS") program so that the new drive will be recognized. The boot-up procedure for the computer system includes diagnostic messages regarding the SCSI drives.
In the SCSI system, drive status is monitored to detect drive failure and to control LED indicators. Green and amber LEDs may be included on the SCSI adapter card in the host system for each drive to indicate the current state of the drive. The backplane provides SCSI management of the LEDs, which may be used to indicate, for example, drive activity/inactivity, drive failure, drive removal or that the drive should not be removed, drive defective, or that no power is or may be supplied to the drive, or that the drive can be safely hot swapped.
Referring now to FIG. 1, a typical hot swap drive setup is shown for coupling a host system 10 to a SCSI bus backplane 12. The host system 10 is coupled to the SCSI bus backplane 12 via an AUX power line 14, a command/control line 16, and a SCSI bus 18 (e.g., a 68 pin bus). The backplane 12 is coupled to drives 20 via a line 24 (e.g., 80 pin hot swappable). AUX power is provided from the host system 10 via the AUX power line 14 to the SCSI bus backplane 12, which then provides power via the line 24 to the drives 20. Command and control signals are passed via the command/control line 16 between the host system 10 and the SCSI bus backplane 12 for issuing commands and for controlling the drives 20. Information, for example, data, may be sent between the host system 10 and the drives 20 via the line 24 through the SCSI bus backplane 12, and then via the SCSI bus 18. The termination signal is sent via the SCSI bus 18 from the host 10 to the SCSI bus backplane 12 for SCSI bus termination. SCSI bus signals originating in the drives 20, for example, status information regarding the drives 20, as well as status information regarding the SCSI bus backplane 12, may be sent back to the host system 10 via the SCSI bus 18.
Functional testing of the performance characteristics of the SCSI bus backplane should be performed because of the important role the backplane plays in the SCSI system. Testing may be extremely important for quality control purposes when performed in a manufacturing environment, and test speed is a factor that should be as short as possible. In testing the SCSI bus backplane 12, the backplane 12 is typically disconnected and a new or another backplane 12 is reconnected to the host system 10 in a test setup. This procedure interrupts operation of the host system 10. The drives 20 that are present at the connectors, for example, those coupled to the line 24 and the SCSI bus backplane 12, must be spun down for disconnection and reconnection. Each time the backplane 12 is replaced for testing, however, the host system 10 has to be re-booted to re-establish the (BIOS) recognition of the drive type and the number of active drives. Such interruptions may unnecessarily add to testing time.
Therefore, there is a need to provide a system for functionally testing SCSI bus backplanes that also avoids the potential disadvantages set forth above.